perm filename STOYAN.XGP[LET,JMC]1 blob
sn#201117 filedate 1976-02-10 generic text, type T, neo UTF8
/LMAR=0/XLINE=3/FONT#0=BASL30/FONT#1=BASI30/FONT#2=BASB30/FONT#3=STA200/FONT#4=NGB25
␈↓ ↓H␈↓␈↓βS␈↓∧ Artificial Intelligence Laboratory, STANFORD UNIVERSITY, Stanford, California 94305
␈↓ ↓H␈↓∧Telephone 415 497-4430␈↓ ↑February 10, 1976
␈↓ ↓H␈↓Dr. Herbert Stoyan
␈↓ ↓H␈↓DDR 806 Dresden
␈↓ ↓H␈↓Togliattistr. 40
␈↓ ↓H␈↓East Germany
␈↓ ↓H␈↓Dear Dr. Stoyan:
␈↓ ↓H␈↓The␈αparents␈αof␈αLISP␈αwere␈αFortran,␈αFLPL␈α(Fortran␈αlist␈αprocessing␈αlanguage),␈αand␈αIPL.␈α From␈αIPL
␈↓ ↓H␈↓I obtained the idea of list structure and from Fortran the idea of an algebraic language.
␈↓ ↓H␈↓The␈α∞≡rst␈α∞idea␈α∞was␈α∞that␈α∞of␈α∞getting␈α∞at␈α∞parts␈α∞of␈α∞an␈α∞expression␈α∞by␈α∞computing␈α∞what␈α∞are␈α∞now␈α∞called
␈↓ ↓H␈↓selector␈α∞functions,␈α
and␈α∞this␈α
led␈α∞to␈α
the␈α∞development␈α
of␈α∞CAR␈α
and␈α∞CDR.␈α
These␈α∞were␈α∞included␈α
in
␈↓ ↓H␈↓FLPL␈α
which␈α
was␈α
implemented␈α
by␈αGelernter's␈α
group␈α
at␈α
IBM␈α
to␈αwhich␈α
I␈α
was␈α
a␈α
consultant.␈αThe␈α
only
␈↓ ↓H␈↓thing␈α∞they␈α∂ contributed␈α∞to␈α∞the␈α∂ideas␈α∞of␈α∂LISP,␈α∞(but␈α∞is␈α∂was␈α∞important),␈α∞was␈α∂the␈α∞idea␈α∂that␈α∞CONS
␈↓ ↓H␈↓should␈α
have␈α
as␈α
value␈α
a␈α
pointer␈α
to␈α
the␈α
list␈α
structure␈α
it␈α
constructs.␈α
I␈α
had␈α
previously␈αused␈α
conditional
␈↓ ↓H␈↓expressions␈αin␈αconnection␈αwith␈αa␈αchess␈αprogram␈αwritten␈αin␈αFortran,␈αand␈αin␈αthe␈αsummer␈αof␈α1958,␈αI
␈↓ ↓H␈↓wrote␈α∂a␈α⊂paper␈α∂LISP␈α⊂function␈α∂for␈α⊂di≥erentiate␈α∂of␈α⊂algebraic␈α∂expressions.␈α⊂ Actual␈α∂work␈α⊂on␈α∂LISP
␈↓ ↓H␈↓started␈α
in␈αthe␈α
fall␈α
of␈α58␈α
with␈α
the␈αhand␈α
coding␈α
of␈αsome␈α
LISP␈α
functions␈αin␈α
the␈α
assembly␈αlanguage␈α
of
␈↓ ↓H␈↓the␈α
IBM␈α
704.␈α
These␈α
included␈α
the␈α
read␈α
and␈α
print␈α
routines␈α
and␈α
a␈α
simple␈α
di≥erentiate.␈α
At␈αthat␈α
time
␈↓ ↓H␈↓I␈α∞simpli≡ed␈α∞the␈α∞language␈α∞by␈α∞having␈α∞only␈α∞one␈α∞CONS␈α∞a␈α∞function␈α∞of␈α∞two␈α∂arguments.␈α∞ Previously,
␈↓ ↓H␈↓CONS␈α∞had␈α
4␈α∞arguments␈α
because␈α∞the␈α
machine␈α∞word␈α
of␈α∞the␈α
IBM␈α∞704␈α
had␈α∞4␈α
parts␈α∞that␈α∞could␈α
be
␈↓ ↓H␈↓used.␈α Another␈α
important␈αdevelopment␈α
at␈αthat␈α
time␈αwas␈αto␈α
use␈αa␈α
garbage␈αcollector␈α
in␈αorder␈αto␈α
hide
␈↓ ↓H␈↓the erasing of list structures from the user.
␈↓ ↓H␈↓When␈α∂I␈α∂started␈α∂to␈α∂write␈α∂my␈α∂paper␈α∂for␈α∂the␈α∂Communications␈α∂of␈α∂the␈α∂ACM␈α∂in␈α∂1959,␈α∂I␈α⊂wrote␈α∂the
␈↓ ↓H␈↓EVAL␈αfunction␈αas␈αan␈αanalog␈αto␈αthe␈αuniversal␈αTuring␈αmachine␈αin␈αorder␈αto␈αshow␈αthat␈αLISP␈αwas␈αa
␈↓ ↓H␈↓suitable␈αbasis␈αfor␈αrecursive␈αfunction␈αtheory.␈α The␈αS-expression␈αform␈αof␈αLISP␈αwas␈αinvented␈αin␈αthis
␈↓ ↓H␈↓manner,␈α∞and␈α∂perhaps␈α∞some␈α∞other␈α∂simpli≡cations␈α∞were␈α∞made␈α∂at␈α∞that␈α∞time␈α∂in␈α∞order␈α∞to␈α∂clarify␈α∞the
␈↓ ↓H␈↓logical structure.
␈↓ ↓H␈↓Up␈α
to␈α
that␈α
time,␈αwe␈α
intended␈α
to␈α
write␈αa␈α
compiler␈α
for␈α
an␈αM-expression␈α
version␈α
of␈α
LISP,␈α
but␈αthis
␈↓ ↓H␈↓was␈α∞going␈α∞slowly,␈α∞so␈α∞Steve␈α∞Russell␈α∞initiated␈α∂hand␈α∞coding␈α∞of␈α∞the␈α∞EVAL␈α∞function␈α∞of␈α∞my␈α∂paper␈α∞-
␈↓ ↓H␈↓using it as an interpreter for LISP.
␈↓ ↓H␈↓The␈α
≡rst␈αversion␈α
of␈α
LISP␈αwas␈α
≡nished␈αin␈α
late␈α
1959␈αand␈α
a␈αsecond␈α
version,␈α
LISP␈α1.5␈α
was␈α≡nished␈α
in
␈↓ ↓H␈↓about 1961 and is described in the LISP 1.5 Programmer's manual published by MIT press.
␈↓ ↓H␈↓Let me now deal explicitly with your questions.
␈↓ ↓H␈↓ 1.␈α LISP␈αwas␈αthe␈αonly␈αlanguage␈αthat␈αI␈αfollowed␈αto␈αimplementation.␈α But␈αI␈αhave␈αoccasionally
␈↓ ↓H␈↓thought␈α
about␈αand␈α
written␈α
memoranda␈αabout␈α
general␈α
purpose␈αlanguages.␈α
My␈α
main␈αcontribution
␈↓ ↓H␈↓to␈αALGOL␈αwas␈α
the␈αidea␈αof␈α
conditional␈αexpressions,␈αbut␈αthe␈α
syntax␈αfor␈αconditional␈α
expression␈αin
␈↓ ↓H␈↓ALGOL was proposed by John Backus in a committee meeting.
␈↓ ↓H␈↓αDr. Herbert Stoyan␈↓ ¬VFebruary 10, 1976␈↓
nPage 2␈↓
␈↓ ↓H␈↓ 2.␈α
I␈α
agree␈α
with␈α
you␈α
that␈α
the␈α
S-expression␈αnotation␈α
is␈α
one␈α
of␈α
the␈α
key␈α
ideas,␈α
and␈α
as␈αI␈α
explained
␈↓ ↓H␈↓before,␈αI␈αinitially␈αdid␈αit,␈αbecause␈αI␈αwanted␈αto␈αmake␈αmy␈αpaper␈αmathematically␈αclean.␈αOnly␈αthen␈αdid
␈↓ ↓H␈↓the advantages of using the same higher level form for program and data become apparent.
␈↓ ↓H␈↓ 3.␈α
In␈α
my␈α
opinion,␈α
the␈α
language␈α
was␈αnever␈α
≡nished,␈α
in␈α
that␈α
the␈α
PROG␈α
feature,␈α
the␈αpsuedo
␈↓ ↓H␈↓functions␈α
that␈α
modify␈α
list␈α
structure,␈α
and␈α
the␈α
call-by-value␈α
structures␈α
of␈α
EVAL␈α
are␈αmade␈α
anomalous
␈↓ ↓H␈↓and␈α
sub-optimal.␈α
I␈α
hope␈α
to␈α
return␈α
to␈α
these␈α
subjects.␈α
The␈α
interpreter␈α
was␈α
originally␈α
a␈α
stop-gap␈α
and
␈↓ ↓H␈↓even␈α⊂though␈α⊂it␈α⊂is␈α⊂now␈α⊂easy␈α⊂to␈α⊂write␈α∂compilers,␈α⊂most␈α⊂LISP␈α⊂systems␈α⊂have␈α⊂an␈α⊂interpreter␈α⊂and␈α∂a
␈↓ ↓H␈↓compiler.
␈↓ ↓H␈↓ 4.␈α∞ Besides␈α∞me,␈α∞there␈α
were␈α∞about␈α∞3␈α∞young␈α
professional␈α∞programmers␈α∞and␈α∞several␈α
graduate
␈↓ ↓H␈↓students␈α∀involved␈α∀in␈α∀the␈α∀implementation␈α∀of␈α∪the␈α∀≡rst␈α∀versions␈α∀of␈α∀LISP␈α∀Besides␈α∀writing␈α∪the
␈↓ ↓H␈↓interpreter,␈αSteven␈αRussell␈α
also␈αplayed␈αan␈α
important␈αpart␈αin␈α
inventing␈αthe␈αFUNARG␈α
device␈αthat
␈↓ ↓H␈↓solved␈α∞a␈α∂di≠cult␈α∞problem␈α∂concerning␈α∞free␈α∂variables␈α∞in␈α∞functions␈α∂that␈α∞are␈α∂given␈α∞to␈α∂functions␈α∞as
␈↓ ↓H␈↓arguments.
␈↓ ↓H␈↓This␈αproblem␈α
later␈αcame␈αup␈α
in␈αconnection␈αwith␈α
ALGOL␈αand␈α
I␈αwas␈αsurprised␈α
that␈αwe␈αalready␈α
had
␈↓ ↓H␈↓a␈αbetter␈αsolution␈αthan␈αmost␈αof␈αthe␈α
ALGOL␈αcompiler␈αwriters.␈α I␈αdon't␈αknow␈αexactly␈α
who␈αinvented
␈↓ ↓H␈↓the FUNARG device, but I am sure I didn't.
␈↓ ↓H␈↓The␈αatmosphere␈αof␈αthe␈αMIT-AI␈αproject␈αwas␈αvery␈αinformal␈αat␈α≡rst,␈αpartly␈αbecause␈αthe␈αproject␈αhad
␈↓ ↓H␈↓a␈α⊂rather␈α⊂informal␈α⊂existence.␈α⊂ There␈α⊂was␈α⊃no␈α⊂written␈α⊂proposal␈α⊂for␈α⊂its␈α⊂establishment␈α⊂and␈α⊃all␈α⊂the
␈↓ ↓H␈↓people␈α∃were␈α∃supported␈α∃by␈α∃the␈α∃MIT␈α⊗Computation␈α∃Center␈α∃and␈α∃the␈α∃MIT␈α∃Research␈α⊗Lab␈α∃of
␈↓ ↓H␈↓Electronics.␈α The␈αonly␈α
supporting␈αproject␈αpeople␈α
were␈αthe␈αsecretary␈α
and␈αthe␈αprogrammers,␈αand␈α
our
␈↓ ↓H␈↓only␈α⊃equipment␈α⊃was␈α⊃a␈α⊃keypunch.␈α⊃ People␈α∩who␈α⊃lost␈α⊃interest␈α⊃in␈α⊃the␈α⊃project␈α⊃simply␈α∩switched␈α⊃to
␈↓ ↓H␈↓another activity.
␈↓ ↓H␈↓ 5.␈α
The␈α
idea␈α
that␈α
there␈αshould␈α
be␈α
a␈α
PROG␈α
feature␈αwas␈α
present␈α
from␈α
the␈α
beginning.␈α The
␈↓ ↓H␈↓surprise␈α⊂was␈α⊂that␈α⊂so␈α⊂much␈α⊂could␈α⊂be␈α⊃done␈α⊂without␈α⊂using␈α⊂it.␈α⊂ However,␈α⊂I␈α⊂don't␈α⊃remember␈α⊂who
␈↓ ↓H␈↓actually␈α⊃devised␈α⊂the␈α⊃notation␈α⊃used␈α⊂for␈α⊃PROG.␈α⊃ It␈α⊂certainly␈α⊃didn't␈α⊃get␈α⊂much␈α⊃thought,␈α⊃but␈α⊂the
␈↓ ↓H␈↓explicit RETURN was better than the ALGOL scheme.
␈↓ ↓H␈↓ 6.␈α∪ The␈α∪≡rst␈α∪big␈α∀user␈α∪of␈α∪LISP␈α∪was␈α∪James␈α∀Slagle,␈α∪then␈α∪a␈α∪graduate␈α∪student␈α∀writing␈α∪a
␈↓ ↓H␈↓dissertation␈αon␈αsymbolic␈αintegration.␈α Much␈αe≥ort␈αwas␈αput␈αinto␈αsolving␈αthe␈αproblems␈αthat␈αarose␈αin
␈↓ ↓H␈↓his work.
␈↓ ↓H␈↓ 7.␈α∂ The␈α∂≡rst␈α∂reaction␈α⊂to␈α∂LISP␈α∂by␈α∂other␈α∂implementers␈α⊂was␈α∂to␈α∂invent␈α∂their␈α⊂own␈α∂languages
␈↓ ↓H␈↓taking␈αsome␈α
LISP␈αfeatures.␈α
However,␈αLISP␈αwas␈α
actually␈αcopied␈α
for␈αother␈α
machines␈αthan␈αthe␈α
IBM
␈↓ ↓H␈↓704␈αin␈αthe␈αearly␈α60's,␈αcertainly␈αby␈α1963␈αbut␈αprobably␈αearlier.␈α Most␈αof␈αthe␈αearly␈αimplementers␈αhad
␈↓ ↓H␈↓no real user community and not much was done with the language after their implementation.
␈↓ ↓H␈↓ 8.␈α
Harold␈α
MacIntosh␈α
implemented␈α
LISP␈α
in␈α
Mexico␈α
in␈α
the␈α
early␈α
60's,␈α
but␈α
I␈α
don't␈α
know␈α
when
␈↓ ↓H␈↓LISP␈α∞was␈α
≡rst␈α∞used␈α∞in␈α
Europe.␈α∞ Certainly,␈α
the␈α∞major␈α∞implementation␈α
of␈α∞LISP␈α
for␈α∞the␈α∞IBM␈α
360
␈↓ ↓H␈↓was in use in Europe by 1969.
␈↓ ↓H␈↓ 9.␈α∃ Since␈α∃1964,␈α∃many␈α∃versions␈α∃of␈α∀LISP␈α∃have␈α∃been␈α∃written.␈α∃ The␈α∃most␈α∃notable␈α∀were
␈↓ ↓H␈↓BBNLISP␈α∞which␈α∂is␈α∞now␈α∞called␈α∂INTERLISP,␈α∞which␈α∂was␈α∞optimized␈α∞for␈α∂a␈α∞paged␈α∂machine.␈α∞ The
␈↓ ↓H␈↓main␈αperson␈αinvolved␈αin␈αthis␈αis␈αWarren␈αTeitelman,␈αnow␈αat␈αXerox␈αPalo␈αAlto␈αResearch␈αCenter.␈α In
␈↓ ↓H␈↓my␈α∞opinion,␈α∞much␈α∂of␈α∞what␈α∞has␈α∂been␈α∞done␈α∞is␈α∞excessive␈α∂elaboration;␈α∞the␈α∞INTERLISP␈α∂manual␈α∞is
␈↓ ↓H␈↓αDr. Herbert Stoyan␈↓ ¬VFebruary 10, 1976␈↓
nPage 3␈↓
␈↓ ↓H␈↓very␈αlong.␈α However,␈αmany␈α
of␈αthe␈αdebugging␈αfeatures␈αof␈α
INTERLISP␈αare␈αvery␈αuseful.␈α Some␈α
very
␈↓ ↓H␈↓interesting␈α
work␈α
is␈α
also␈αbeing␈α
done␈α
by␈α
Prof.␈α
Goto␈αof␈α
Tokyo␈α
University␈α
in␈α
eliminating␈αduplicate␈α
list
␈↓ ↓H␈↓structure.␈α∞ The␈α
discovery␈α∞by␈α∞Vuillemin␈α
and␈α∞Cadiou␈α∞at␈α
Stanford␈α∞that␈α∞the␈α
LISP␈α∞EVAL␈α∞does␈α
not
␈↓ ↓H␈↓always␈αgive␈αthe␈αleast␈αde≡ned␈αsolution␈αof␈αthe␈αfunctional␈αequation␈αwas␈αa␈αsurprise␈αto␈αme,␈αand␈αrecent
␈↓ ↓H␈↓work␈α∞on␈α∞"lazy␈α∞evaluators"␈α∞that␈α∞delay␈α∞evaluation␈α∞as␈α∞long␈α∞as␈α∞possible␈α∞by␈α∞James␈α∞Morris␈α∞at␈α∞Xerox,
␈↓ ↓H␈↓among␈αother␈αpeople,␈αis␈αalso␈αinteresting,␈αand␈αI␈αam␈αhopeful␈αthat␈αsomething␈αalong␈αthese␈αlines␈αcan␈αbe
␈↓ ↓H␈↓included in a practical version of LISP.
␈↓ ↓H␈↓ 10.␈α I␈α
wrote␈αa␈α
LISP␈αinterpreter␈α
in␈αErshov's␈α
language␈αALPHA␈α
for␈αthe␈α
BESM-6␈αin␈α
December
␈↓ ↓H␈↓68.␈α I␈αleft␈α
before␈αI␈αhad␈α
time␈αto␈αdebug␈α
it,␈αbut␈αI␈α
think␈α somone␈αin␈α
Novosibirsk␈α≡nished␈αit.␈α My␈α
LISP
␈↓ ↓H␈↓interpreter␈α
was␈α
basically␈α
a␈α
programming␈α
exercise␈α
because␈α
the␈α
BESM-6␈α
has␈α
too␈α
little␈α
memory␈α
for
␈↓ ↓H␈↓interesting␈α
LISP␈αprograms.␈α
I␈α
have␈αalso␈α
heard␈αthat␈α
Lavrov␈α
wrote␈αa␈α
LISP␈α
for␈αthe␈α
BESM-6,␈αbut␈α
his
␈↓ ↓H␈↓version was independent of mine.
␈↓ ↓H␈↓ 11.␈α
As␈α
you␈αsee␈α
from␈α
the␈α
above,␈αthe␈α
design␈α
process␈α
of␈αLISP␈α
was␈α
not␈αentirely␈α
straightforward,
␈↓ ↓H␈↓in␈α∂that␈α∂there␈α∂did␈α∂not␈α∂exist␈α∂a␈α⊂single␈α∂uni≡ed␈α∂plan␈α∂before␈α∂getting␈α∂started,␈α∂and␈α∂the␈α⊂goals␈α∂changed
␈↓ ↓H␈↓during␈α
the␈α∞project.␈α
The␈α∞goal␈α
about␈α∞making␈α
the␈α∞system␈α
mathematically␈α∞clean,␈α
contributed␈α∞to␈α
the
␈↓ ↓H␈↓practical␈αutility␈α
of␈αLISP␈α
and␈αto␈α
its␈αlong␈α
life.␈α It␈αis␈α
now␈αalmost␈α
18␈αyears␈α
old␈αand␈α
there␈αis␈αno␈α
obvious
␈↓ ↓H␈↓candidate␈α
for␈α∞replacing␈α
it.␈α∞ I␈α
am␈α∞thinking␈α
about␈α
holding␈α∞a␈α
20th␈α∞anniversary␈α
celebration␈α∞in␈α
Sept
␈↓ ↓H␈↓1978␈α∞together␈α∞with␈α∂a␈α∞conference␈α∞concerned␈α∞with␈α∂how␈α∞to␈α∞do␈α∞the␈α∂whole␈α∞thing␈α∞better␈α∞-␈α∂both␈α∞from
␈↓ ↓H␈↓theoretical and practical points of view.
␈↓ ↓H␈↓Enclosed␈α
also␈α
is␈αa␈α
copy␈α
of␈αthe␈α
speech.␈α
I␈α
was␈αreluctant␈α
to␈α
send␈αit␈α
to␈α
you␈α
because␈αI␈α
think␈α
it␈αhas␈α
some
␈↓ ↓H␈↓mistakes␈α∂in␈α∞substance␈α∂as␈α∂well␈α∞as␈α∂typographical␈α∞errors.␈α∂ Moreover,␈α∂I␈α∞have␈α∂not␈α∞taken␈α∂the␈α∂time␈α∞to
␈↓ ↓H␈↓consult with anyone else concerning exactly who did what in the late 50's and early 60's.
␈↓ ↓H␈↓I will refer your questions about MLISP2 to David Smith who is still in the area.
␈↓ ↓H␈↓If␈α∞you␈α
are␈α∞interested␈α
in␈α∞trying␈α
to␈α∞come␈α
to␈α∞the␈α
20th␈α∞anniversary␈α
conference␈α∞in␈α
1978,␈α∞I␈α
will␈α∞try␈α
to
␈↓ ↓H␈↓keep you informed.
␈↓ ↓H␈↓Here are some answers to your questions of February:
␈↓ ↓H␈↓ 1.␈αAt␈αthe␈αend␈αof␈α1958,␈αsome␈αpaper␈αprograms␈αhad␈αbeen␈αwritten,␈αand␈αsome␈αof␈αthem␈αhad␈αbeen
␈↓ ↓H␈↓hand-translated for the IBM 704.
␈↓ ↓H␈↓ 2. I will try to get you a copy of that manual, but it may not be easy.
␈↓ ↓H␈↓ 3. We already knew that we wanted to write LISP 2.
␈↓ ↓H␈↓ 4.␈αThe␈α
acronyms␈α␈↓↓car␈↓␈α
and␈α␈↓↓cdr␈↓␈α
are␈αmy␈α
invention␈αin␈α
1956.␈α The␈α
name␈α␈↓↓cons␈↓␈α
and␈αwhat␈α
it␈αdoes␈α
as
␈↓ ↓H␈↓program␈α
are␈α
also␈α
mine.␈α
Their␈α
invention␈α
is␈α
that␈α
its␈α
value␈α
should␈α
be␈α
a␈α
pointer␈α
to␈α
the␈α
list␈α
structure␈α
it
␈↓ ↓H␈↓constructs.
␈↓ ↓H␈↓ 5. Explained in beginning of the letter.
␈↓ ↓H␈↓ 6.␈αEverything␈αthat␈αI␈αcan␈αthink␈αof␈αthat␈αis␈αin␈αLISP␈αwas␈αdone␈αbefore␈αI␈αhad␈αthe␈αopportunity␈αto
␈↓ ↓H␈↓in∨uence␈α
ALGOL.␈α I␈α
was␈αnot␈α
on␈αthe␈α
ALGOL␈α58␈α
international␈αcommittee,␈α
and␈αmaybe␈α
my␈αwork␈α
on
␈↓ ↓H␈↓LISP won me a place on the 1960 committee.
␈↓ ↓H␈↓αDr. Herbert Stoyan␈↓ ¬VFebruary 10, 1976␈↓
nPage 4␈↓
␈↓ ↓H␈↓ 7.␈α∩LISP␈α⊃I␈α∩was␈α⊃the␈α∩704-LISP.␈α⊃ If␈α∩you␈α⊃want,␈α∩I␈α⊃could␈α∩try␈α⊃to␈α∩determine␈α⊃if␈α∩listings␈α∩of␈α⊃the
␈↓ ↓H␈↓interpreter still exist.
␈↓ ↓H␈↓ 8.␈αBrayton␈αis␈αat␈αThomas␈αJ.␈αWatson␈αLaboratory,␈αIBM␈αCorporation,␈αYorktown␈αHeights,␈αNew
␈↓ ↓H␈↓York.
␈↓ ↓H␈↓ 9.␈α∩There␈α∪were␈α∩minor␈α∩di≥erences␈α∪at␈α∩least␈α∪in␈α∩that␈α∩the␈α∪implemented␈α∩version␈α∪allowed␈α∩for
␈↓ ↓H␈↓numbers␈α∩and␈α⊃provided␈α∩specially␈α⊃for␈α∩NIL␈α⊃and␈α∩T␈α⊃so␈α∩they␈α⊃didn't␈α∩have␈α⊃to␈α∩be␈α⊃quoted.␈α∩ I␈α⊃don't
␈↓ ↓H␈↓remember␈α⊃␈↓↓appq␈↓.␈α⊃ While␈α⊃I␈α⊃intended␈α⊃to␈α⊃allow␈α⊂some␈α⊃combinators␈α⊃in␈α⊃order␈α⊃to␈α⊃get␈α⊃more␈α⊃ways␈α⊂of
␈↓ ↓H␈↓forming␈α∂functions,␈α∂this␈α∂wasn't␈α∂implemented,␈α⊂and␈α∂LAMBDA,␈α∂LABEL,␈α∂and␈α∂atoms␈α∂were␈α⊂all.␈α∂ Of
␈↓ ↓H␈↓course␈α∃LABEL␈α∃was␈α∃hardly␈α∃ever␈α∃used.␈α∀ Correction:␈α∃Any␈α∃LISP␈α∃expression␈α∃could␈α∃appear␈α∀in
␈↓ ↓H␈↓functional␈αposition,␈αand␈α
it␈αwould␈αbe␈αevaluated.␈α
I␈αforgot,␈αbecause␈αthis␈α
is␈αlogically␈αanomalous,␈αand␈α
I
␈↓ ↓H␈↓discouraged its use. I believe some people used it, however.
␈↓ ↓H␈↓ I␈α
assume␈α
that␈α
by␈α
functional␈α∞indicators,␈α
you␈α
mean␈α
FUNCTION.␈α
The␈α
use␈α∞of␈α
FUNCTION
␈↓ ↓H␈↓instead␈α∪of␈α∪QUOTE␈α∩served␈α∪a␈α∪purpose␈α∪in␈α∩704␈α∪LISP,␈α∪but␈α∪I␈α∩forget␈α∪what.␈α∪ Later␈α∪LISPs␈α∩have
␈↓ ↓H␈↓simpli≡ed␈α
the␈α
treatment␈α
of␈α
functions␈α
with␈αfunctions␈α
as␈α
arguments␈α
to␈α
the␈α
detriment␈α
of␈αcorrectness␈α
in
␈↓ ↓H␈↓order to get programs that run faster. The a-list was a list of dotted pairs.
␈↓ ↓H␈↓ 10.␈α
LISP␈α1.5␈α
was␈α
a␈αsuccessor␈α
to␈αLISP␈α
I␈α
on␈αthe␈α
same␈αmachine.␈α
The␈α
new␈αname␈α
came␈αwith␈α
the
␈↓ ↓H␈↓new␈αmanual.␈α It␈αwas␈αcalled␈αLISP␈α1.5,␈αbecause␈αideas␈αfor␈αLISP␈α2␈αwere␈αalready␈αbeing␈αdeveloped.␈α A
␈↓ ↓H␈↓LISP␈α2␈αproject␈αwas␈αstarted␈αat␈αSystems␈αDevelopment␈αCorporation␈αin␈αthe␈αearly␈α1960s,␈αand␈αa␈αsystem
␈↓ ↓H␈↓was␈α
written␈α∞and␈α
debugged␈α∞for␈α
the␈α∞Q-32␈α
computer.␈α∞ This␈α
was␈α∞a␈α
military␈α∞computer,␈α
and␈α∞only␈α
the
␈↓ ↓H␈↓one␈αat␈αSDC␈αwas␈αused␈αfor␈αscienti≡c␈αwork.␈α The␈αmachine␈αhad␈α48K␈αof␈αmemory␈αof␈α48␈αbit␈αwords,␈αand
␈↓ ↓H␈↓in␈α⊂principle␈α∂was␈α⊂a␈α⊂better␈α∂machine␈α⊂than␈α∂the␈α⊂IBM␈α⊂7090.␈α∂ Unfortunately,␈α⊂it␈α∂never␈α⊂got␈α⊂any␈α∂more
␈↓ ↓H␈↓memory␈αand␈αwas␈αto␈αexpensive␈αto␈αmaintain.␈α A␈αproject␈αto␈αtransfer␈αLISP␈α2␈αfrom␈αthe␈αSDC␈αmachine
␈↓ ↓H␈↓to␈α
the␈αIBM␈α
360␈α
and␈αthe␈α
Digital␈α
Equipment␈αCorporation␈α
PDP-6␈α
computer␈αwas␈α
started␈α
but␈αnever
␈↓ ↓H␈↓completed. Many memoranda on LISP 2 exist.
␈↓ ↓H␈↓ 11. Already answered.
␈↓ ↓H␈↓ 12. I went to Stanford in September 1962.
␈↓ ↓H␈↓ 13.␈αJan␈αKent's␈αaddress␈αin␈αthe␈α1972␈αACM␈αdirectory␈αis␈αNils␈αJuelgst␈α39B,␈αOslo␈α2,␈αNorway.␈α If
␈↓ ↓H␈↓that doesn't work I would suggest writing to him c/o IBM Corporation, Oslo Norway.
␈↓ ↓H␈↓Sincerely,
␈↓ ↓H␈↓John McCarthy
␈↓ ↓H␈↓Director
␈↓ ↓H␈↓Professor of Computer Science